iT邦幫忙

2022 iThome 鐵人賽

DAY 1
1

前言

  文章開始之前先做一下簡單地個人背景介紹。我是主修語言學的在讀研究生,雖然高中念的是理組,但大學主修教育,四年來完全跟程式語言還有AI這些東西八竿子打不著關係。上研究所之後才開始接觸這塊東西,所以這系列的文章基本就是從我一個主修語言學的NLP小白跟文理組混血的角度切入,希望對跟我一樣剛開始接觸這個領域或是有興趣的人有點幫助。

自然語言處理(Natural Language Processing)

  自然語言處理顧名思義就是自然地處理語言。NLP的重點其實就在「自然」上面。「自然」這個詞乍看之下很簡單,但仔細想想就會發現他好像不能說明什麼。當然這樣的情況是建立在你對語言學沒有了解的前提之下。多數語言學家認為人類是唯一會使用語言的物種(至少在現在我們發現的所有物種之中),所以如果說到什麼叫「自然地」處理語言,絕對就是像人一樣處理語言了。我知道可能有人會好奇像蜜蜂這樣的物種透過飛行軌跡傳遞訊息的動物不能算是有語言嗎?這就牽涉到你怎麼定義「語言」了,總之我在這邊採用的是語言學家對狹義的語言應該有的特徵作為判定標準。(關於動物到底有沒有語言的正反辯論可以看文末的補充資料~)

  所以說NLP要做的事情就是讓電腦像人一樣處理語言。看到這邊大家不知道有沒有發現一個疑點?他如果不理解語言的話要怎麼處理語言呢?如果我們不理解一個數學公式要怎麼用它?死背嗎?這拿來應付國高中的數學考試當然是綽綽有餘,但對待語言絕對不是這麼一回事。剛剛一整段都在強調NLP的重點就在「像人一樣」,大家應該不是把中文裡面所有東西都死背起來再拿來用吧?如果是的話你又是怎麼在看到下面這個以前完全沒看過的句子的瞬間就明白它的意思呢?

浴缸裡的鴨嘴獸帶著浴帽在洗玫瑰浴

  面對語言的無限創造性,我們永遠沒辦法知道自己下一秒會聽到或看到什麼樣千奇百怪的東西,所以企圖把所有東西都背起來絕對不會是一個好方法,這也不是人對語言的理解和處理方式。死背不只不符合「自然」,更不符合經濟效益。即便我們找到方法能隨時把所有東西都輸入到電腦裡面並告訴它這些東西的意思,我敢說大部分人的電腦記憶體根本不夠用。但是對電腦來說,他們認識的應該就只有0跟1而已啊,我們要怎麼讓他們學會像人一樣處理語言呢?答案是把語言的規則交給它。而語言學就是在研究語言規則的學科,所以接下來請容我簡介紹一下自己平常都在學校裡面學什麼。

語言學(Linguistics)

友人&親戚長輩s:你研究所念什麼嗎?
我:語言學。
友人&親戚長輩s:所以你主修的是什麼語言?

  這是已經發生在我日常生活中N次讓我不知道怎麼應對的對話,也是我決定寫這系列文章的其中一個原因—把語言學發揚光大!(又在亂立flag)所謂語言學其實無關哪個特定語言,而是跟所有語言相關。借用我親愛的指導教授曾經說過的話解釋一下,「語言學就是一門研究語言現象的社會科學。」基本上我們尋找的是普遍存在語言當中的規則跟現象,並在這裡面做出區別(這個可以從等一下的例子裡面看到)。語言學又可以分成核心的「理論語言學」跟向外擴張的「應用語言學」,下面分別簡單介紹一下。

理論語言學

  著重在語言本身的規則上面,基本上研究的東西可以分成三個面向:

  1. 語言的聲音
    • 語音學:偏重研究聲音的產生。例:發音位置跟方式(發不同音的時候舌頭位置跟氣流的變化);聲音波紋
    • 音韻學:偏重研究聲音結合的規則。例:中文的三聲變調(兩個三聲字合在一起的時候,第一個字會變成二聲。例:老虎);英文無聲子音的音節首送氣現象(可以觀察一下唸pin跟spin的時候,p的差異)
  2. 語言的結構
    • 構詞學:研究詞彙的結構。例:un-跟動詞結合的時候,通常帶有「取消」的意思(uncover, undo);跟形容詞結合的時候,通常帶有「否定」的意思(unhappy, untouchable);不能跟名詞結合。
    • 句法學:研究句子的結構。例:大部分語言的句子中都要有主詞、動詞跟受詞的存在,但是中文跟英文的語序是SVO,日文跟韓文則是SOV。中文跟英文當中時間副詞及地點副詞應該出現的位置也不同。

I watched Naruto at home yesterday.
昨天 在家 看 火影忍者。

  1. 語言的意義
    • 語意學:研究詞彙、句子、篇章等的意思。例:到底什麼可以代表一個詞的意思?字典裡的解釋可以嗎?
    • 語用學:研究我們實際如何使用語言。例:反諷的使用、「就是」在言談中的作用

應用語言學

  把理論語言學跟其他領域結合的就是應用語言學,因為有太多面向了,所以下面只列出幾個例子。

1.社會語言學:社會學跟語言學的結合。例:性別之間語言使用習慣差異(像是髒話的使用頻率、顏色詞的豐富程度等);英國不同階級間的發音差異
2.歷史語言學:歷史跟語言學的結合。例:語言如何隨著歷史演進而變化(已經不再使用的古英語的thou、中文的之乎者也)
2.司法語言學:語言學跟司法的結合。例:法律文件中的用詞規則、從個人言談及寫作習慣找出犯罪嫌疑人、從嫌疑人言談中使用的詞彙找線索等
2.計算語言學: 語言學跟程式語言的結合。例:NLP

  從上面的介紹大家應該可以感受到語言學跟我們的生活息息相關,也跟NLP息息相關。如果覺得這種感受還不夠明確,這邊最後用簡易的語音助理工作流程來總結一下語言學跟NLP之間的關係以及NLP的實際應用。

  • 分析聲音的波型:在我們對siri或google助理講完話之後,他們會根據接收到的聲音轉換成波型。
  • 分離每個音節:轉換成波型以後會根據已經先訓練過的模型去分出每個字再判斷它是什麼音。(這裡會用到語音學跟音韻學)
  • 找出最可能的組合:因為中文同音異字的狀況很多,所以在這個地方會用機率的方式去計算什麼樣的組合可能性比較高(跟構詞學和句法學相關)
  • 分辨該組合的意義:判斷這個組合可能代表的意思,就是我們希望siri做的事(跟語意學和語用學相關)
  • 產出回應:大致上就是把前面幾個步驟倒著執行再產出波紋,回答我們。

竟然一不小心就寫了2000多個字,真的是很搞威,之後會盡量言簡意賅一點(應該啦)。希望今天的文章大家看了還喜歡,覺得有趣的話可以幫我按個讚或收藏這個系列XDD 如果發現bug的話歡迎在下面提出來,有什麼問題的話也可以留言提問喔~

明天見/images/emoticon/emoticon48.gif

關於動物到底有沒有語言的正反論述
關於語言學家對「語言」的認定


下一篇
[Day 2] NLP好朋友:Python的打開方式—基本語法及資料型態介紹
系列文
文理組人都能上手的入門 NLP(自然語言處理)31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言